package com.wicket.okrbff.biz.service;

import com.wicket.okrbff.biz.service.dto.req.*;
import com.wicket.okrbff.biz.service.dto.res.*;
import com.wicket.okrframework.integration.FwBasePostTypeClient;
import com.wicket.okrframework.integration.dto.QueryStationTypeListRespDto;
import com.wicket.okrframework.integration.dto.QueryStationTypeListReqDto;
import com.wicket.okrbff.biz.service.dto.common.BffOrgStationTypeDto;
import cn.hutool.core.bean.BeanUtil;
import java.util.stream.Collectors;
import com.wicket.okrbff.common.exception.Assert;
import com.wicket.okrframework.integration.dto.QueryStationTypeDetailRespDto;
import com.wicket.okrframework.integration.dto.QueryStationTypeDetailReqDto;
import com.wicket.okrframework.integration.FwBaseBatchClient;
import com.wicket.okrframework.integration.dto.QueryBaseBatchDetailRespDto;
import com.wicket.okrframework.integration.dto.QueryBaseBatchDetailReqDto;
import com.wicket.okrcomponent.integration.FwCompOffStateClient;
import com.wicket.okrcomponent.integration.dto.QueryStepDetailComBorderRespDto;
import com.wicket.okrcomponent.integration.dto.QueryStepDetailComBorderReqDto;
import com.wicket.okrframework.integration.dto.AddStationTypeRespDto;
import com.wicket.okrframework.integration.dto.AddStationTypeReqDto;
import com.wicket.okrframework.integration.dto.DeleteStationTypeRespDto;
import com.wicket.okrframework.integration.dto.DeleteStationTypeReqDto;
import com.wicket.okrframework.integration.dto.UpdateStationTypeRespDto;
import com.wicket.okrframework.integration.dto.UpdateStationTypeReqDto;
import com.wicket.okrframework.integration.dto.ReviseStationTypeRespDto;
import com.wicket.okrframework.integration.dto.ReviseStationTypeReqDto;
import com.wicket.okrframework.integration.dto.ArchiveStationTypeRespDto;
import com.wicket.okrframework.integration.dto.ArchiveStationTypeReqDto;
import com.wicket.okrframework.integration.dto.UndoReviseStationTypeRespDto;
import com.wicket.okrframework.integration.dto.UndoReviseStationTypeReqDto;
import com.wicket.okrframework.integration.dto.QueryGradeScopeListRespDto;
import com.wicket.okrframework.integration.dto.QueryGradeScopeListReqDto;
import com.wicket.okrbff.biz.service.dto.common.BffOrgGradeScopeDto;
import com.wicket.okrframework.integration.dto.QueryPositionGradeListRespDto;
import com.wicket.okrframework.integration.dto.QueryPositionGradeListReqDto;
import com.wicket.okrbff.biz.service.dto.common.BffNoArcpositionGradeDto;
import com.wicket.okrbff.biz.service.dto.common.BffArcOrgGradeScopeDto;
import com.wicket.okrframework.integration.dto.QueryGradeScopeListBorderRespDto;
import com.wicket.okrframework.integration.dto.QueryGradeScopeListBorderReqDto;
import com.wicket.okrframework.integration.dto.QueryStationTypeListBorderRespDto;
import com.wicket.okrframework.integration.dto.QueryStationTypeListBorderReqDto;
import com.wicket.okrbff.common.util.CommonFunctionHelper;
import com.wicket.okrframework.integration.dto.AddPositionGradeRespDto;
import com.wicket.okrframework.integration.dto.AddPositionGradeReqDto;
import com.wicket.okrframework.integration.dto.DeletePositionGradeRespDto;
import com.wicket.okrframework.integration.dto.DeletePositionGradeReqDto;
import com.wicket.okrframework.integration.dto.QueryPositionGradeListBorderRespDto;
import com.wicket.okrframework.integration.dto.QueryPositionGradeListBorderReqDto;
import com.wicket.okrbff.biz.service.dto.common.BffOrgPositionGradeDto;
import com.wicket.okrframework.integration.dto.BatchDeleteGradeScopeAndDeleteStepRespDto;
import com.wicket.okrframework.integration.dto.BatchDeleteGradeScopeAndDeleteStepReqDto;
import com.wicket.okrframework.integration.dto.QueryPostGradesListRespDto;
import com.wicket.okrframework.integration.dto.QueryPostGradesListReqDto;
import com.wicket.okrbff.biz.service.dto.common.BffPostGradesDto;
import com.wicket.okrframework.integration.dto.UpdateGradeScopeRespDto;
import com.wicket.okrframework.integration.dto.UpdateGradeScopeReqDto;
import com.wicket.okrframework.integration.dto.UpdatePositionGradeRespDto;
import com.wicket.okrframework.integration.dto.UpdatePositionGradeReqDto;
import com.wicket.okrframework.integration.dto.QueryStationSystemListRespDto;
import com.wicket.okrframework.integration.dto.QueryStationSystemListReqDto;
import com.wicket.okrbff.biz.service.dto.common.BffNoArcOrgGradeScopeDto;
import com.wicket.okrframework.integration.dto.BatchQueryGradeScopeRespDto;
import com.wicket.okrframework.integration.dto.BatchQueryGradeScopeReqDto;
import com.wicket.okrframework.integration.dto.BatchUpdatePositionGradeRespDto;
import com.wicket.okrframework.integration.dto.BatchUpdatePositionGradeReqDto;
import com.wicket.okrframework.integration.dto.OrgGradeScopeDto;

/**
 * @author ：
 * @date ：
 *
 *
 * @version 1.0
 */
public interface PostTypeService {
    /**
     * B1-3批量更新岗位类型等级范围（管理）
     */
    BffBatchUpdateStationGradeScopeRespDto batchUpdateStationGradeScope(BffBatchUpdateStationGradeScopeReqDto reqDto);

    /**
   * B1-3返回上一步调整岗位类型（管理）
   */
    BffBackToLastStepStationTypeRespDto backToLastStepStationType(BffBackToLastStepStationTypeReqDto reqDto);

    /**
   * B1-3批量更新职务级别等级范围（管理）
   */
    BffBatchUpdatePositionGradeScopeRespDto batchUpdatePositionGradeScope(BffBatchUpdatePositionGradeScopeReqDto reqDto);

    /**
   * B1-3查询岗位类型等级范围列表-第四步（管理）
   */
    BffQueryGradeScopeListRespDto queryGradeScopeList(BffQueryGradeScopeListReqDto reqDto);

    /**
   * B1-3批量查询职务级别等级范围列表（管理）
   */
    BffBatchQueryGradeScopeRespDto batchQueryGradeScope(BffBatchQueryGradeScopeReqDto reqDto);

    /**
     * B1-3查询可存档职务级别条件（管理）
     */
    BffQueryArchivePositionGradeRespDto queryArchivePositionGrade(BffQueryArchivePositionGradeReqDto reqDto);

    /**
   * B1-3查询岗位类型等级范围列表-第二步（管理）
   */
    BffQueryStepTwoGradeScopeListRespDto queryStepTwoGradeScopeList(BffQueryStepTwoGradeScopeListReqDto reqDto);

    /**
   * B1-3查询岗位类型详情（管理边界）
   */
    BffQueryStationTypeDetailBorderRespDto queryStationTypeDetailBorder(BffQueryStationTypeDetailBorderReqDto reqDto);

    /**
   * B1-3查询岗位体系
   */
    BffQueryStationSystemListRespDto queryStationSystemList(BffQueryStationSystemListReqDto reqDto);

    /**
   * B1-3查询职务级别列表（边界）
   */
    BffQueryPositionGradeListBorderRespDto queryPositionGradeListBorder(BffQueryPositionGradeListBorderReqDto reqDto);

    /**
   * B1-3修改职务级别（管理）
   */
    BffUpdatePositionGradeRespDto updatePositionGrade(BffUpdatePositionGradeReqDto reqDto);

    /**
   * B1-3修改等级范围（管理）
   */
    BffUpdateGradeScopeRespDto updateGradeScope(BffUpdateGradeScopeReqDto reqDto);

    /**
   * B1-3查询岗位等级列表（管理）
   */
    BffQueryPostGradesListRespDto queryPostGradesList(BffQueryPostGradesListReqDto reqDto);

    /**
   * B1-3初始化岗位类型（管理）
   */
    BffBatchUpdateInitializeGradeScopeRespDto batchUpdateInitializeGradeScope(BffBatchUpdateInitializeGradeScopeReqDto reqDto);

    /**
   * B1-3删除职务级别（管理）
   */
    BffDeletePositionGradeRespDto deletePositionGrade(BffDeletePositionGradeReqDto reqDto);

    /**
   * B1-3新增职务级别（管理）
   */
    BffAddPositionGradeRespDto addPositionGrade(BffAddPositionGradeReqDto reqDto);

    /**
   * B1-3查询岗位类型列表（边界）
   */
    BffQueryStationTypeListBorderRespDto queryStationTypeListBorder(BffQueryStationTypeListBorderReqDto reqDto);

    /**
   * B1-3查询等级范围列表（边界）
   */
    BffQueryGradeScopeListBorderRespDto queryGradeScopeListBorder(BffQueryGradeScopeListBorderReqDto reqDto);

    /**
   * B1-3查询职务级别列表（管理）
   */
    BffQueryPositionGradeListRespDto queryPositionGradeList(BffQueryPositionGradeListReqDto reqDto);

    /**
   * B1-3查询岗位类型等级范围列表-第一步（管理）
   */
    BffQueryStepOneGradeScopeListRespDto queryStepOneGradeScopeList(BffQueryStepOneGradeScopeListReqDto reqDto);

    /**
   * B1-3取消修订岗位类型（管理）--待
   */
    BffUndoReviseStationTypeRespDto undoReviseStationType(BffUndoReviseStationTypeReqDto reqDto);

    /**
   * B1-3存档岗位类型（管理）
   */
    BffArchiveStationTypeRespDto archiveStationType(BffArchiveStationTypeReqDto reqDto);

    /**
   * B1-3修订岗位类型（管理）
   */
    BffReviseStationTypeRespDto reviseStationType(BffReviseStationTypeReqDto reqDto);

    /**
   * B1-3修改岗位类型（管理）
   */
    BffUpdateStationTypeRespDto updateStationType(BffUpdateStationTypeReqDto reqDto);

    /**
   * B1-3删除岗位类型（管理）
   */
    BffDeleteStationTypeRespDto deleteStationType(BffDeleteStationTypeReqDto reqDto);

    /**
   * B1-3新增岗位类型（管理）
   */
    BffAddStationTypeRespDto addStationType(BffAddStationTypeReqDto reqDto);

    /**
   * B1-3查询岗位类型详情（管理）
   */
    BffQueryStationTypeDetailRespDto queryStationTypeDetail(BffQueryStationTypeDetailReqDto reqDto);

    /**
   * B1-3查询岗位类型列表
   */
    BffQueryStationTypeListRespDto queryStationTypeList(BffQueryStationTypeListReqDto reqDto);

    /**
   * B1-3批量存档等级范围(管理）
   */
    BffBatchArchiveGradeScopeRespDto batchArchiveGradeScope(BffBatchArchiveGradeScopeReqDto reqDto);

    /**
   * B1-3批量改岗位等级（管理）
   */
    BffBatchUpdatePostGradesRespDto batchUpdatePostGrades(BffBatchUpdatePostGradesReqDto reqDto);

    /**
   * B1-3查询管理模式职务级别列表(管理)(边界)
   */
    BffQueryPositionGradeMgtListBorderRespDto queryPositionGradeMgtListBorder(BffQueryPositionGradeMgtListBorderReqDto reqDto);
    //
}
